#!/bin/bash

pdsh -R ssh -w MSMSRED[1-3],PSMSRED1,PSMSAPP1 "/usr/local/bin/supervisorctl -c /smsred/redis-3.0.4/conf/redis-supervisord.conf status "

# install pdsh
```
wget https://github.com/grondo/pdsh/archive/pdsh-2.31.tar.gz
tar xf pdsh-2.31.tar.gz -C /usr/local/src/
cd /usr/local/src/pdsh-pdsh-2.31/
./configure \
--prefix=/usr/local/pdsh \
--with-ssh \
--with-machines=/usr/local/pdsh/machines \
--with-dshgroups=/usr/local/pdsh/group \
--with-rcmd-rank-list=ssh \
--with-exec && \
make && \
make install
```

```
语法：pdsh <参数> <需要并行执行的命令>

常用参数：
-w 指定主机 -x 排除指定的主机
目标主机可以使用Ip地址或主机名（确保该主机名已经在/etc/hosts中存在解析）
多个主机之间可以使用逗号分隔，可重复使用该参数指定多个主机；可以使用简单的正则
-g 指定主机组 -G 排除指定主机组
-l 目标主机的用户名
如果不指定用户名，默认以当前用户名作为在目标主机上执行命令的用户名
-N 用来关闭目标主机所返回值前的主机名显示
```

-w 指定主机

pdsh -w ssh:192.168.72.12,192.168.72.13,192.168.72.14 date

主机列表
cat > /usr/local/pdsh/machines <<EOF
192.168.72.12
192.168.72.13
192.168.72.14
EOF

pdsh -a uptime

[5分钟学会supervisord ，让你更方便的使用Linux](https://blog.csdn.net/yang_z_1/article/details/117554272)

yum -y install supervisord

systemctl status supervisord
systemctl start supervisord
systemctl stop supervisord
systemctl reload supervisord
systemctl restart supervisord

supervisorctl status #查看进程状态
supervisorctl start   [进程标签]   #单独启动某一进程
supervisorctl stop #停止进程
supervisorctl restart #重启进程
supervisorctl update #更新配置进程配置文件
